home *** CD-ROM | disk | FTP | other *** search
/ Language/OS - Multiplatform Resource Library / LANGUAGE OS.iso / et / et3_0-a1.lha / et3 / src / Look.h < prev    next >
C/C++ Source or Header  |  1992-07-06  |  3KB  |  106 lines

  1. #ifndef Look_First
  2. #ifdef __GNUG__
  3. //pragma once
  4. #pragma interface
  5. #endif
  6. #define Look_First
  7.  
  8. #include "Rectangle.h"
  9. #include "Metric.h"
  10. #include "Layout.h"
  11.  
  12. class Ink;
  13.  
  14. //---- Look --------------------------------------------------------------------
  15.  
  16. class Look {
  17. public:
  18.     Ink *backgroundColor;
  19.     Ink *disableInk;
  20.     
  21.     Layout *popUpMenuLayout;
  22.     Layout *pullDownMenuLayout;
  23.     Layout *menuLineLayout;
  24.     Layout *menuItemLayout;
  25.     Layout *scrollButtonLayout;
  26.     Layout *radioButtonLayout;
  27.     Layout *toggleButtonLayout;
  28.     Layout *scrollBarLayout;
  29.     Layout *actionButtonLayout;
  30.     Layout *defaultButtonLayout;
  31.     Layout *popupButtonLayout;
  32.     Layout *sliderLayout;
  33.     Layout *thumbLayout;
  34.     Layout *fieldBorderLayout;
  35.     Layout *fieldLayout;
  36.     Layout *windowBorderLayout;
  37.     Layout *menuBarLayout;
  38.     Layout *sashLayout;
  39.     Layout *progressBarLayout;
  40.     Layout *scaleLayout;
  41.     Layout *scaleThumbLayout[2];
  42.     Layout *groupLayout;
  43.     Layout *frameLayout;
  44.     
  45. public:
  46.     Look();
  47.     virtual ~Look();
  48.     
  49.     Layout *MenuLineLayout()
  50.     { return menuLineLayout; }
  51.     Layout *PopUpMenuLayout()
  52.     { return popUpMenuLayout; }
  53.     Layout *PullDownMenuLayout()
  54.     { return pullDownMenuLayout; }
  55.     Layout *MenuItemLayout()
  56.     { return menuItemLayout; }
  57.     Layout *ScrollButtonLayout()
  58.     { return scrollButtonLayout; }
  59.     Layout *RadioButtonLayout()
  60.     { return radioButtonLayout; }
  61.     Layout *ToggleButtonLayout()
  62.     { return toggleButtonLayout; }
  63.     Layout *ScrollBarLayout()
  64.     { return scrollBarLayout; }
  65.     Layout *ActionButtonLayout()
  66.     { return actionButtonLayout; }
  67.     Layout *DefaultButtonLayout()
  68.     { return defaultButtonLayout; }
  69.     Layout *PopupButtonLayout()
  70.     { return popupButtonLayout; }
  71.     Layout *SliderLayout()
  72.     { return sliderLayout; }
  73.     Layout *ThumbLayout()
  74.     { return thumbLayout; }
  75.     Layout *FieldBorderLayout(bool noborder)
  76.     { return noborder ? fieldLayout : fieldBorderLayout; }
  77.     Layout *MenuBarLayout()
  78.     { return menuBarLayout; }
  79.     Layout *SashLayout()
  80.     { return sashLayout; }
  81.     Layout *ProgressBarLayout()
  82.     { return progressBarLayout; }
  83.     Layout *ScaleLayout()
  84.     { return scaleLayout; }
  85.     Layout *ScaleThumbLayout(Direction dir)
  86.     { return scaleThumbLayout[dir]; }
  87.     Layout *GroupLayout()
  88.     { return groupLayout; }
  89.     Layout *FrameLayout()
  90.     { return frameLayout; }
  91.     
  92.     virtual void DrawHighlight(Rectangle &r);
  93.  
  94.     Ink *GetBackgroundColor()
  95.     { return backgroundColor; }
  96.     Ink *DisableInk()
  97.         { return disableInk; }
  98. };
  99.  
  100. extern void MakeLook(bool motif);
  101. extern void ToggleLook();
  102.  
  103. extern Look *gLook;
  104.  
  105. #endif
  106.